/*
 * DamageCalculatorView.java
 */
package damagecalculator;

import javax.swing.JLayeredPane;
import org.jdesktop.application.Action;
import org.jdesktop.application.ResourceMap;
import org.jdesktop.application.SingleFrameApplication;
import org.jdesktop.application.FrameView;
import org.jdesktop.application.TaskMonitor;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.util.Arrays;
import javax.swing.Timer;
import javax.swing.Icon;
import javax.swing.JDialog;
import javax.swing.JFrame;

/**
 * The application's main frame.
 */
public class DamageCalculatorView extends FrameView {

    public DamageCalculatorView(SingleFrameApplication app) {
        super(app);

        initComponents();

        // status bar initialization - message timeout, idle icon and busy animation, etc
        ResourceMap resourceMap = getResourceMap();
        int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout");
        messageTimer = new Timer(messageTimeout, new ActionListener() {

            public void actionPerformed(ActionEvent e) {
                statusMessageLabel.setText("");
            }
        });
        messageTimer.setRepeats(false);
        int busyAnimationRate = resourceMap.getInteger("StatusBar.busyAnimationRate");
        for (int i = 0; i < busyIcons.length; i++) {
            busyIcons[i] = resourceMap.getIcon("StatusBar.busyIcons[" + i + "]");
        }
        busyIconTimer = new Timer(busyAnimationRate, new ActionListener() {

            public void actionPerformed(ActionEvent e) {
                busyIconIndex = (busyIconIndex + 1) % busyIcons.length;
                statusAnimationLabel.setIcon(busyIcons[busyIconIndex]);
            }
        });
        idleIcon = resourceMap.getIcon("StatusBar.idleIcon");
        statusAnimationLabel.setIcon(idleIcon);
        progressBar.setVisible(false);

        // connecting action tasks to status bar via TaskMonitor
        TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext());
        taskMonitor.addPropertyChangeListener(new java.beans.PropertyChangeListener() {

            public void propertyChange(java.beans.PropertyChangeEvent evt) {
                String propertyName = evt.getPropertyName();
                if ("started".equals(propertyName)) {
                    if (!busyIconTimer.isRunning()) {
                        statusAnimationLabel.setIcon(busyIcons[0]);
                        busyIconIndex = 0;
                        busyIconTimer.start();
                    }
                    progressBar.setVisible(true);
                    progressBar.setIndeterminate(true);
                } else if ("done".equals(propertyName)) {
                    busyIconTimer.stop();
                    statusAnimationLabel.setIcon(idleIcon);
                    progressBar.setVisible(false);
                    progressBar.setValue(0);
                } else if ("message".equals(propertyName)) {
                    String text = (String) (evt.getNewValue());
                    statusMessageLabel.setText((text == null) ? "" : text);
                    messageTimer.restart();
                } else if ("progress".equals(propertyName)) {
                    int value = (Integer) (evt.getNewValue());
                    progressBar.setVisible(true);
                    progressBar.setIndeterminate(false);
                    progressBar.setValue(value);
                }
            }
        });

        // Store and Build arrays
        ItemBuildPanels = new javax.swing.JPanel[]{Item1BuildPanel, Item2BuildPanel, Item3BuildPanel,
            Item4BuildPanel, Item5BuildPanel, Item6BuildPanel};
        
        StorePanels = new javax.swing.JPanel[]{DefencePanelStore, AttackPanelStore, MagicPanelStore, 
            MovementPanelStore, ConsumablesPanelStore};

    }

    @Action
    public void showAboutBox() {
        if (aboutBox == null) {
            JFrame mainFrame = DamageCalculatorApp.getApplication().getMainFrame();
            aboutBox = new DamageCalculatorAboutBox(mainFrame);
            aboutBox.setLocationRelativeTo(mainFrame);
        }
        DamageCalculatorApp.getApplication().show(aboutBox);
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {
        java.awt.GridBagConstraints gridBagConstraints;

        mainPanel = new javax.swing.JPanel();
        jPanel11 = new javax.swing.JPanel();
        jTabbedPane1 = new javax.swing.JTabbedPane();
        StorePanel = new javax.swing.JPanel();
        ShopPanel = new javax.swing.JLayeredPane();
        AttackPanelStore = new javax.swing.JPanel();
        damageAttackPanelStore = new damagecalculator.PreItemsButton(AttackPanelStore);
        criticalAttackPanelStore = new damagecalculator.PreItemsButton(AttackPanelStore);
        attackspeedAttackPanelStore = new damagecalculator.PreItemsButton(AttackPanelStore);
        lifestealAttackPanelStore = new damagecalculator.PreItemsButton(AttackPanelStore);
        DefencePanelStore = new javax.swing.JPanel();
        healthDefencePanelStore = new damagecalculator.PreItemsButton(DefencePanelStore);
        mrDefencePanelStore = new damagecalculator.PreItemsButton(DefencePanelStore);
        healthregDefencePanelStore = new damagecalculator.PreItemsButton(DefencePanelStore);
        armorDefencePanelStore = new damagecalculator.PreItemsButton(DefencePanelStore);
        ItemsPanelStore = new javax.swing.JPanel();
        HomePanelStore = new javax.swing.JPanel();
        defenceHomePanelStore = new javax.swing.JButton();
        attackHomePanelStore = new javax.swing.JButton();
        magicHomePanelStore = new javax.swing.JButton();
        movementHomePanelStore = new javax.swing.JButton();
        consumablesHomePanelStore = new javax.swing.JButton();
        MagicPanelStore = new javax.swing.JPanel();
        MovementPanelStore = new javax.swing.JPanel();
        ConsumablesPanelStore = new javax.swing.JPanel();
        PanelTracker = new javax.swing.JPanel();
        HomePanelTracker = new PanelTrackerButton();
        jPanel12 = new javax.swing.JPanel();
        jPanel13 = new javax.swing.JPanel();
        jPanel14 = new javax.swing.JPanel();
        ItemsBuildPanel = new javax.swing.JPanel();
        Item1BuildPanel = new javax.swing.JPanel();
        Item2BuildPanel = new javax.swing.JPanel();
        Item3BuildPanel = new javax.swing.JPanel();
        Item4BuildPanel = new javax.swing.JPanel();
        Item5BuildPanel = new javax.swing.JPanel();
        Item6BuildPanel = new javax.swing.JPanel();
        RunesBuildPanel = new javax.swing.JPanel();
        MasteriesBuildPanel = new javax.swing.JPanel();
        jPanel10 = new javax.swing.JPanel();
        jPanel15 = new javax.swing.JPanel();
        ChampionComboBox = new javax.swing.JComboBox();
        SummonerSpell1 = new javax.swing.JButton();
        SummonerSpell2 = new javax.swing.JButton();
        menuBar = new javax.swing.JMenuBar();
        javax.swing.JMenu fileMenu = new javax.swing.JMenu();
        javax.swing.JMenuItem exitMenuItem = new javax.swing.JMenuItem();
        javax.swing.JMenu helpMenu = new javax.swing.JMenu();
        javax.swing.JMenuItem aboutMenuItem = new javax.swing.JMenuItem();
        statusPanel = new javax.swing.JPanel();
        javax.swing.JSeparator statusPanelSeparator = new javax.swing.JSeparator();
        statusMessageLabel = new javax.swing.JLabel();
        statusAnimationLabel = new javax.swing.JLabel();
        progressBar = new javax.swing.JProgressBar();
        jPanel1 = new javax.swing.JPanel();
        jLabel5 = new javax.swing.JLabel();

        mainPanel.setMaximumSize(new java.awt.Dimension(1024, 768));
        mainPanel.setMinimumSize(new java.awt.Dimension(1024, 768));
        mainPanel.setName("mainPanel"); // NOI18N
        mainPanel.setPreferredSize(new java.awt.Dimension(1024, 768));
        mainPanel.addComponentListener(new java.awt.event.ComponentAdapter() {
            public void componentResized(java.awt.event.ComponentEvent evt) {
                mainPanelComponentResized(evt);
            }
        });
        mainPanel.setLayout(new java.awt.GridLayout(1, 0));

        jPanel11.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        jPanel11.setName("jPanel11"); // NOI18N
        jPanel11.setLayout(new java.awt.BorderLayout());

        jTabbedPane1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        jTabbedPane1.setName("buildTab"); // NOI18N

        StorePanel.setMaximumSize(new java.awt.Dimension(360, 380));
        StorePanel.setMinimumSize(new java.awt.Dimension(360, 380));
        StorePanel.setName("StorePanel"); // NOI18N
        StorePanel.setPreferredSize(new java.awt.Dimension(360, 380));
        StorePanel.setRequestFocusEnabled(false);
        StorePanel.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                StorePanelMouseClicked(evt);
            }
        });
        StorePanel.setLayout(new java.awt.BorderLayout());

        ShopPanel.setAlignmentX(0.0F);
        ShopPanel.setAlignmentY(0.0F);
        ShopPanel.setDoubleBuffered(true);
        ShopPanel.setName("ShopPanel"); // NOI18N
        ShopPanel.setOpaque(true);
        ShopPanel.setPreferredSize(StorePanel.getPreferredSize());
        ShopPanel.setRequestFocusEnabled(false);
        ShopPanel.addComponentListener(new java.awt.event.ComponentAdapter() {
            public void componentResized(java.awt.event.ComponentEvent evt) {
                ShopPanelComponentResized(evt);
            }
        });

        AttackPanelStore.setName("AttackPanelStore"); // NOI18N
        AttackPanelStore.setLayout(new java.awt.GridBagLayout());

        org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(damagecalculator.DamageCalculatorApp.class).getContext().getResourceMap(DamageCalculatorView.class);
        damageAttackPanelStore.setText(resourceMap.getString("damageAttackPanelStore.text")); // NOI18N
        damageAttackPanelStore.setName("damageAttackPanelStore"); // NOI18N
        damageAttackPanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                damageAttackPanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        AttackPanelStore.add(damageAttackPanelStore, gridBagConstraints);

        criticalAttackPanelStore.setText(resourceMap.getString("criticalAttackPanelStore.text")); // NOI18N
        criticalAttackPanelStore.setName("criticalAttackPanelStore"); // NOI18N
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        AttackPanelStore.add(criticalAttackPanelStore, gridBagConstraints);

        attackspeedAttackPanelStore.setText(resourceMap.getString("attackspeedAttackPanelStore.text")); // NOI18N
        attackspeedAttackPanelStore.setName("attackspeedAttackPanelStore"); // NOI18N
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        AttackPanelStore.add(attackspeedAttackPanelStore, gridBagConstraints);

        lifestealAttackPanelStore.setText(resourceMap.getString("lifestealAttackPanelStore.text")); // NOI18N
        lifestealAttackPanelStore.setName("lifestealAttackPanelStore"); // NOI18N
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        AttackPanelStore.add(lifestealAttackPanelStore, gridBagConstraints);

        AttackPanelStore.setBounds(0, 0, 210, 250);
        ShopPanel.add(AttackPanelStore, new Integer(1));

        DefencePanelStore.setName("DefencePanelStore"); // NOI18N
        DefencePanelStore.setLayout(new java.awt.GridBagLayout());

        healthDefencePanelStore.setText(resourceMap.getString("healthDefencePanelStore.text")); // NOI18N
        healthDefencePanelStore.setAlignmentY(0.0F);
        healthDefencePanelStore.setName("healthDefencePanelStore"); // NOI18N
        healthDefencePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                healthDefencePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        DefencePanelStore.add(healthDefencePanelStore, gridBagConstraints);

        mrDefencePanelStore.setText(resourceMap.getString("mrDefencePanelStore.text")); // NOI18N
        mrDefencePanelStore.setName("mrDefencePanelStore"); // NOI18N
        mrDefencePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mrDefencePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        DefencePanelStore.add(mrDefencePanelStore, gridBagConstraints);

        healthregDefencePanelStore.setText(resourceMap.getString("healthregDefencePanelStore.text")); // NOI18N
        healthregDefencePanelStore.setName("healthregDefencePanelStore"); // NOI18N
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        DefencePanelStore.add(healthregDefencePanelStore, gridBagConstraints);

        armorDefencePanelStore.setText(resourceMap.getString("armorDefencePanelStore.text")); // NOI18N
        armorDefencePanelStore.setName("armorDefencePanelStore"); // NOI18N
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        DefencePanelStore.add(armorDefencePanelStore, gridBagConstraints);

        DefencePanelStore.setBounds(0, 0, 220, 252);
        ShopPanel.add(DefencePanelStore, new Integer(1));

        ItemsPanelStore.setAlignmentX(0.0F);
        ItemsPanelStore.setAlignmentY(0.0F);
        ItemsPanelStore.setName("ItemsPanelStore"); // NOI18N
        ItemsPanelStore.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
            public void propertyChange(java.beans.PropertyChangeEvent evt) {
                ItemsPanelStorePropertyChange(evt);
            }
        });

        javax.swing.GroupLayout ItemsPanelStoreLayout = new javax.swing.GroupLayout(ItemsPanelStore);
        ItemsPanelStore.setLayout(ItemsPanelStoreLayout);
        ItemsPanelStoreLayout.setHorizontalGroup(
            ItemsPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );
        ItemsPanelStoreLayout.setVerticalGroup(
            ItemsPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        ItemsPanelStore.setBounds(0, 0, 100, 100);
        ShopPanel.add(ItemsPanelStore, javax.swing.JLayeredPane.DEFAULT_LAYER);

        HomePanelStore.setAlignmentX(0.0F);
        HomePanelStore.setAlignmentY(0.0F);
        HomePanelStore.setName("HomePanelStore"); // NOI18N
        HomePanelStore.setLayout(new java.awt.GridBagLayout());

        defenceHomePanelStore.setText(resourceMap.getString("defenceHomePanelStore.text")); // NOI18N
        defenceHomePanelStore.setName("defenceHomePanelStore"); // NOI18N
        defenceHomePanelStore.setPreferredSize(new java.awt.Dimension(80, 23));
        defenceHomePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                defenceHomePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        HomePanelStore.add(defenceHomePanelStore, gridBagConstraints);

        attackHomePanelStore.setText(resourceMap.getString("attackHomePanelStore.text")); // NOI18N
        attackHomePanelStore.setName("attackHomePanelStore"); // NOI18N
        attackHomePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                attackHomePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        HomePanelStore.add(attackHomePanelStore, gridBagConstraints);

        magicHomePanelStore.setText(resourceMap.getString("magicHomePanelStore.text")); // NOI18N
        magicHomePanelStore.setName("magicHomePanelStore"); // NOI18N
        magicHomePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                magicHomePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        HomePanelStore.add(magicHomePanelStore, gridBagConstraints);

        movementHomePanelStore.setText(resourceMap.getString("movementHomePanelStore.text")); // NOI18N
        movementHomePanelStore.setName("movementHomePanelStore"); // NOI18N
        movementHomePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                movementHomePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        HomePanelStore.add(movementHomePanelStore, gridBagConstraints);

        consumablesHomePanelStore.setText(resourceMap.getString("consumablesHomePanelStore.text")); // NOI18N
        consumablesHomePanelStore.setName("consumablesHomePanelStore"); // NOI18N
        consumablesHomePanelStore.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                consumablesHomePanelStoreActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.ipadx = 71;
        gridBagConstraints.ipady = 20;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
        gridBagConstraints.insets = new java.awt.Insets(10, 25, 10, 25);
        HomePanelStore.add(consumablesHomePanelStore, gridBagConstraints);

        HomePanelStore.setBounds(0, 0, 216, 315);
        ShopPanel.add(HomePanelStore, new Integer(2));

        MagicPanelStore.setName("MagicPanelStore"); // NOI18N

        javax.swing.GroupLayout MagicPanelStoreLayout = new javax.swing.GroupLayout(MagicPanelStore);
        MagicPanelStore.setLayout(MagicPanelStoreLayout);
        MagicPanelStoreLayout.setHorizontalGroup(
            MagicPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );
        MagicPanelStoreLayout.setVerticalGroup(
            MagicPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        MagicPanelStore.setBounds(0, 0, 100, 100);
        ShopPanel.add(MagicPanelStore, new Integer(1));

        MovementPanelStore.setName("MovementPanelStore"); // NOI18N

        javax.swing.GroupLayout MovementPanelStoreLayout = new javax.swing.GroupLayout(MovementPanelStore);
        MovementPanelStore.setLayout(MovementPanelStoreLayout);
        MovementPanelStoreLayout.setHorizontalGroup(
            MovementPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );
        MovementPanelStoreLayout.setVerticalGroup(
            MovementPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        MovementPanelStore.setBounds(0, 0, 100, 100);
        ShopPanel.add(MovementPanelStore, new Integer(1));

        ConsumablesPanelStore.setName("ConsumablesPanelStore"); // NOI18N

        javax.swing.GroupLayout ConsumablesPanelStoreLayout = new javax.swing.GroupLayout(ConsumablesPanelStore);
        ConsumablesPanelStore.setLayout(ConsumablesPanelStoreLayout);
        ConsumablesPanelStoreLayout.setHorizontalGroup(
            ConsumablesPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );
        ConsumablesPanelStoreLayout.setVerticalGroup(
            ConsumablesPanelStoreLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        ConsumablesPanelStore.setBounds(0, 0, 100, 100);
        ShopPanel.add(ConsumablesPanelStore, new Integer(1));

        StorePanel.add(ShopPanel, java.awt.BorderLayout.CENTER);

        PanelTracker.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        PanelTracker.setAlignmentX(0.0F);
        PanelTracker.setAlignmentY(0.0F);
        PanelTracker.setName("PanelTracker"); // NOI18N
        PanelTracker.setPreferredSize(new java.awt.Dimension(6, 50));
        PanelTracker.setRequestFocusEnabled(false);
        PanelTracker.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT, 5, 10));

        HomePanelTracker.setText(resourceMap.getString("HomePanelTracker.text")); // NOI18N
        HomePanelTracker.setName("HomePanelTracker"); // NOI18N
        HomePanelTracker.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                HomePanelTrackerActionPerformed(evt);
            }
        });
        PanelTracker.add(HomePanelTracker);

        StorePanel.add(PanelTracker, java.awt.BorderLayout.NORTH);

        jTabbedPane1.addTab(resourceMap.getString("StorePanel.TabConstraints.tabTitle"), StorePanel); // NOI18N

        jPanel12.setName("jPanel12"); // NOI18N

        javax.swing.GroupLayout jPanel12Layout = new javax.swing.GroupLayout(jPanel12);
        jPanel12.setLayout(jPanel12Layout);
        jPanel12Layout.setHorizontalGroup(
            jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 628, Short.MAX_VALUE)
        );
        jPanel12Layout.setVerticalGroup(
            jPanel12Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 526, Short.MAX_VALUE)
        );

        jTabbedPane1.addTab(resourceMap.getString("jPanel12.TabConstraints.tabTitle"), jPanel12); // NOI18N

        jPanel13.setName("jPanel13"); // NOI18N

        javax.swing.GroupLayout jPanel13Layout = new javax.swing.GroupLayout(jPanel13);
        jPanel13.setLayout(jPanel13Layout);
        jPanel13Layout.setHorizontalGroup(
            jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 628, Short.MAX_VALUE)
        );
        jPanel13Layout.setVerticalGroup(
            jPanel13Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 526, Short.MAX_VALUE)
        );

        jTabbedPane1.addTab(resourceMap.getString("jPanel13.TabConstraints.tabTitle"), jPanel13); // NOI18N

        jPanel11.add(jTabbedPane1, java.awt.BorderLayout.CENTER);

        jPanel14.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        jPanel14.setName("jPanel14"); // NOI18N
        jPanel14.setLayout(new java.awt.BorderLayout());

        ItemsBuildPanel.setName("ItemsBuildPanel"); // NOI18N
        ItemsBuildPanel.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

        Item1BuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        Item1BuildPanel.setMinimumSize(new java.awt.Dimension(84, 100));
        Item1BuildPanel.setName("Item1BuildPanel"); // NOI18N
        Item1BuildPanel.setPreferredSize(new java.awt.Dimension(84, 84));

        javax.swing.GroupLayout Item1BuildPanelLayout = new javax.swing.GroupLayout(Item1BuildPanel);
        Item1BuildPanel.setLayout(Item1BuildPanelLayout);
        Item1BuildPanelLayout.setHorizontalGroup(
            Item1BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 101, Short.MAX_VALUE)
        );
        Item1BuildPanelLayout.setVerticalGroup(
            Item1BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 80, Short.MAX_VALUE)
        );

        ItemsBuildPanel.add(Item1BuildPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 105, -1));

        Item2BuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        Item2BuildPanel.setMinimumSize(new java.awt.Dimension(84, 100));
        Item2BuildPanel.setName("Item2BuildPanel"); // NOI18N
        Item2BuildPanel.setPreferredSize(new java.awt.Dimension(84, 84));

        javax.swing.GroupLayout Item2BuildPanelLayout = new javax.swing.GroupLayout(Item2BuildPanel);
        Item2BuildPanel.setLayout(Item2BuildPanelLayout);
        Item2BuildPanelLayout.setHorizontalGroup(
            Item2BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 101, Short.MAX_VALUE)
        );
        Item2BuildPanelLayout.setVerticalGroup(
            Item2BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 80, Short.MAX_VALUE)
        );

        ItemsBuildPanel.add(Item2BuildPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(105, 0, 105, -1));

        Item3BuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        Item3BuildPanel.setMinimumSize(new java.awt.Dimension(84, 100));
        Item3BuildPanel.setName("Item3BuildPanel"); // NOI18N
        Item3BuildPanel.setPreferredSize(new java.awt.Dimension(84, 84));

        javax.swing.GroupLayout Item3BuildPanelLayout = new javax.swing.GroupLayout(Item3BuildPanel);
        Item3BuildPanel.setLayout(Item3BuildPanelLayout);
        Item3BuildPanelLayout.setHorizontalGroup(
            Item3BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 101, Short.MAX_VALUE)
        );
        Item3BuildPanelLayout.setVerticalGroup(
            Item3BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 80, Short.MAX_VALUE)
        );

        ItemsBuildPanel.add(Item3BuildPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(210, 0, 105, -1));

        Item4BuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        Item4BuildPanel.setMinimumSize(new java.awt.Dimension(84, 100));
        Item4BuildPanel.setName("Item4BuildPanel"); // NOI18N
        Item4BuildPanel.setPreferredSize(new java.awt.Dimension(84, 84));

        javax.swing.GroupLayout Item4BuildPanelLayout = new javax.swing.GroupLayout(Item4BuildPanel);
        Item4BuildPanel.setLayout(Item4BuildPanelLayout);
        Item4BuildPanelLayout.setHorizontalGroup(
            Item4BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 101, Short.MAX_VALUE)
        );
        Item4BuildPanelLayout.setVerticalGroup(
            Item4BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 80, Short.MAX_VALUE)
        );

        ItemsBuildPanel.add(Item4BuildPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(315, 0, 105, -1));

        Item5BuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        Item5BuildPanel.setMinimumSize(new java.awt.Dimension(84, 0));
        Item5BuildPanel.setName("Item5BuildPanel"); // NOI18N
        Item5BuildPanel.setPreferredSize(new java.awt.Dimension(84, 84));

        javax.swing.GroupLayout Item5BuildPanelLayout = new javax.swing.GroupLayout(Item5BuildPanel);
        Item5BuildPanel.setLayout(Item5BuildPanelLayout);
        Item5BuildPanelLayout.setHorizontalGroup(
            Item5BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 101, Short.MAX_VALUE)
        );
        Item5BuildPanelLayout.setVerticalGroup(
            Item5BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 80, Short.MAX_VALUE)
        );

        ItemsBuildPanel.add(Item5BuildPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 0, 105, -1));

        Item6BuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        Item6BuildPanel.setMinimumSize(new java.awt.Dimension(84, 100));
        Item6BuildPanel.setName("Item6BuildPanel"); // NOI18N
        Item6BuildPanel.setPreferredSize(new java.awt.Dimension(84, 84));

        javax.swing.GroupLayout Item6BuildPanelLayout = new javax.swing.GroupLayout(Item6BuildPanel);
        Item6BuildPanel.setLayout(Item6BuildPanelLayout);
        Item6BuildPanelLayout.setHorizontalGroup(
            Item6BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 101, Short.MAX_VALUE)
        );
        Item6BuildPanelLayout.setVerticalGroup(
            Item6BuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 80, Short.MAX_VALUE)
        );

        ItemsBuildPanel.add(Item6BuildPanel, new org.netbeans.lib.awtextra.AbsoluteConstraints(525, 0, 105, -1));

        jPanel14.add(ItemsBuildPanel, java.awt.BorderLayout.NORTH);

        RunesBuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        RunesBuildPanel.setName("RunesBuildPanel"); // NOI18N
        RunesBuildPanel.setPreferredSize(new java.awt.Dimension(317, 100));
        RunesBuildPanel.setRequestFocusEnabled(false);
        RunesBuildPanel.setVerifyInputWhenFocusTarget(false);

        javax.swing.GroupLayout RunesBuildPanelLayout = new javax.swing.GroupLayout(RunesBuildPanel);
        RunesBuildPanel.setLayout(RunesBuildPanelLayout);
        RunesBuildPanelLayout.setHorizontalGroup(
            RunesBuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 313, Short.MAX_VALUE)
        );
        RunesBuildPanelLayout.setVerticalGroup(
            RunesBuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 96, Short.MAX_VALUE)
        );

        jPanel14.add(RunesBuildPanel, java.awt.BorderLayout.EAST);

        MasteriesBuildPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        MasteriesBuildPanel.setName("MasteriesBuildPanel"); // NOI18N
        MasteriesBuildPanel.setPreferredSize(new java.awt.Dimension(315, 100));
        MasteriesBuildPanel.setRequestFocusEnabled(false);
        MasteriesBuildPanel.setVerifyInputWhenFocusTarget(false);

        javax.swing.GroupLayout MasteriesBuildPanelLayout = new javax.swing.GroupLayout(MasteriesBuildPanel);
        MasteriesBuildPanel.setLayout(MasteriesBuildPanelLayout);
        MasteriesBuildPanelLayout.setHorizontalGroup(
            MasteriesBuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 311, Short.MAX_VALUE)
        );
        MasteriesBuildPanelLayout.setVerticalGroup(
            MasteriesBuildPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 96, Short.MAX_VALUE)
        );

        jPanel14.add(MasteriesBuildPanel, java.awt.BorderLayout.WEST);

        jPanel11.add(jPanel14, java.awt.BorderLayout.PAGE_START);

        mainPanel.add(jPanel11);

        jPanel10.setBorder(javax.swing.BorderFactory.createEtchedBorder());
        jPanel10.setName("jPanel10"); // NOI18N
        jPanel10.setPreferredSize(new java.awt.Dimension(414, 410));

        jPanel15.setName("jPanel15"); // NOI18N

        ChampionComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
        ChampionComboBox.setName("ChampionComboBox"); // NOI18N

        SummonerSpell1.setName("SummonerSpell1"); // NOI18N

        SummonerSpell2.setName("SummonerSpell2"); // NOI18N

        javax.swing.GroupLayout jPanel15Layout = new javax.swing.GroupLayout(jPanel15);
        jPanel15.setLayout(jPanel15Layout);
        jPanel15Layout.setHorizontalGroup(
            jPanel15Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel15Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(ChampionComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, 162, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(SummonerSpell1, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(SummonerSpell2, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(333, Short.MAX_VALUE))
        );

        jPanel15Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {SummonerSpell1, SummonerSpell2});

        jPanel15Layout.setVerticalGroup(
            jPanel15Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel15Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel15Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
                    .addComponent(SummonerSpell2, javax.swing.GroupLayout.DEFAULT_SIZE, 51, Short.MAX_VALUE)
                    .addComponent(SummonerSpell1, javax.swing.GroupLayout.DEFAULT_SIZE, 51, Short.MAX_VALUE)
                    .addComponent(ChampionComboBox, javax.swing.GroupLayout.DEFAULT_SIZE, 51, Short.MAX_VALUE))
                .addContainerGap(62, Short.MAX_VALUE))
        );

        jPanel15Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {SummonerSpell1, SummonerSpell2});

        javax.swing.GroupLayout jPanel10Layout = new javax.swing.GroupLayout(jPanel10);
        jPanel10.setLayout(jPanel10Layout);
        jPanel10Layout.setHorizontalGroup(
            jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel15, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        jPanel10Layout.setVerticalGroup(
            jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel10Layout.createSequentialGroup()
                .addComponent(jPanel15, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(622, Short.MAX_VALUE))
        );

        mainPanel.add(jPanel10);

        menuBar.setName("menuBar"); // NOI18N

        fileMenu.setText(resourceMap.getString("fileMenu.text")); // NOI18N
        fileMenu.setName("fileMenu"); // NOI18N

        javax.swing.ActionMap actionMap = org.jdesktop.application.Application.getInstance(damagecalculator.DamageCalculatorApp.class).getContext().getActionMap(DamageCalculatorView.class, this);
        exitMenuItem.setAction(actionMap.get("quit")); // NOI18N
        exitMenuItem.setName("exitMenuItem"); // NOI18N
        fileMenu.add(exitMenuItem);

        menuBar.add(fileMenu);

        helpMenu.setText(resourceMap.getString("helpMenu.text")); // NOI18N
        helpMenu.setName("helpMenu"); // NOI18N

        aboutMenuItem.setAction(actionMap.get("showAboutBox")); // NOI18N
        aboutMenuItem.setName("aboutMenuItem"); // NOI18N
        helpMenu.add(aboutMenuItem);

        menuBar.add(helpMenu);

        statusPanel.setName("statusPanel"); // NOI18N

        statusPanelSeparator.setName("statusPanelSeparator"); // NOI18N

        statusMessageLabel.setName("statusMessageLabel"); // NOI18N

        statusAnimationLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        statusAnimationLabel.setName("statusAnimationLabel"); // NOI18N

        progressBar.setName("progressBar"); // NOI18N

        javax.swing.GroupLayout statusPanelLayout = new javax.swing.GroupLayout(statusPanel);
        statusPanel.setLayout(statusPanelLayout);
        statusPanelLayout.setHorizontalGroup(
            statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(statusPanelSeparator, javax.swing.GroupLayout.DEFAULT_SIZE, 1283, Short.MAX_VALUE)
            .addGroup(statusPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(statusMessageLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 1113, Short.MAX_VALUE)
                .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(statusAnimationLabel)
                .addContainerGap())
        );
        statusPanelLayout.setVerticalGroup(
            statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(statusPanelLayout.createSequentialGroup()
                .addComponent(statusPanelSeparator, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addGroup(statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(statusMessageLabel)
                    .addComponent(statusAnimationLabel)
                    .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(3, 3, 3))
        );

        jPanel1.setName("jPanel1"); // NOI18N

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        jLabel5.setText(resourceMap.getString("jLabel5.text")); // NOI18N
        jLabel5.setName("jLabel5"); // NOI18N

        setComponent(mainPanel);
        setMenuBar(menuBar);
        setStatusBar(statusPanel);
    }// </editor-fold>//GEN-END:initComponents

    private void StorePanelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_StorePanelMouseClicked
        if (MouseEvent.getMouseModifiersText(evt.getModifiers()).equals("Meta+Button3")) {
            currentStorePanel.setVisible(false);
            previousStorePanel.setVisible(true);
        }
    }//GEN-LAST:event_StorePanelMouseClicked

private void mainPanelComponentResized(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_mainPanelComponentResized
    ItemsPanelStore.setBounds(0, 0, ShopPanel.getWidth(), ShopPanel.getHeight());
    HomePanelStore.setBounds(0, 0, ShopPanel.getWidth(), ShopPanel.getHeight());
    AttackPanelStore.setBounds(0, 0, ShopPanel.getWidth(), ShopPanel.getHeight());
    DefencePanelStore.setBounds(0, 0, ShopPanel.getWidth(), ShopPanel.getHeight());
}//GEN-LAST:event_mainPanelComponentResized

private void damageAttackPanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_damageAttackPanelStoreActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_damageAttackPanelStoreActionPerformed
//HomePanelStore - Buttons' events.
private void defenceHomePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_defenceHomePanelStoreActionPerformed
    ShopPanel.setLayer(DefencePanelStore, JLayeredPane.getLayer(HomePanelStore) + 1);
}//GEN-LAST:event_defenceHomePanelStoreActionPerformed

private void ShopPanelComponentResized(java.awt.event.ComponentEvent evt) {//GEN-FIRST:event_ShopPanelComponentResized
}//GEN-LAST:event_ShopPanelComponentResized

private void movementHomePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_movementHomePanelStoreActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_movementHomePanelStoreActionPerformed

private void magicHomePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_magicHomePanelStoreActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_magicHomePanelStoreActionPerformed

private void attackHomePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_attackHomePanelStoreActionPerformed
    ShopPanel.setLayer(AttackPanelStore, JLayeredPane.getLayer(HomePanelStore) + 1);
}//GEN-LAST:event_attackHomePanelStoreActionPerformed

private void consumablesHomePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_consumablesHomePanelStoreActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_consumablesHomePanelStoreActionPerformed

        private void mrDefencePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mrDefencePanelStoreActionPerformed
// TODO add your handling code here:}//GEN-LAST:event_mrDefencePanelStoreActionPerformed
    }
        private void healthDefencePanelStoreActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_healthDefencePanelStoreActionPerformed
            ShopPanel.setLayer(ItemsPanelStore, JLayeredPane.getLayer(DefencePanelStore) + 1);
    }//GEN-LAST:event_healthDefencePanelStoreActionPerformed

    private void HomePanelTrackerActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_HomePanelTrackerActionPerformed
        for (int x = 0; x < StorePanels.length; x++) {
            ShopPanel.setLayer(StorePanels[x], 1);
        }
        ShopPanel.setLayer(ItemsPanelStore, 0);
    }//GEN-LAST:event_HomePanelTrackerActionPerformed

    private void ItemsPanelStorePropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_ItemsPanelStorePropertyChange
            //System.out.println("Property: "+evt);
    }//GEN-LAST:event_ItemsPanelStorePropertyChange

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JPanel AttackPanelStore;
    private javax.swing.JComboBox ChampionComboBox;
    private javax.swing.JPanel ConsumablesPanelStore;
    public static javax.swing.JPanel DefencePanelStore;
    private javax.swing.JPanel HomePanelStore;
    private javax.swing.JButton HomePanelTracker;
    public static javax.swing.JPanel Item1BuildPanel;
    public static javax.swing.JPanel Item2BuildPanel;
    public static javax.swing.JPanel Item3BuildPanel;
    public static javax.swing.JPanel Item4BuildPanel;
    public static javax.swing.JPanel Item5BuildPanel;
    public static javax.swing.JPanel Item6BuildPanel;
    private javax.swing.JPanel ItemsBuildPanel;
    public static javax.swing.JPanel ItemsPanelStore;
    private javax.swing.JPanel MagicPanelStore;
    private javax.swing.JPanel MasteriesBuildPanel;
    private javax.swing.JPanel MovementPanelStore;
    public static javax.swing.JPanel PanelTracker;
    private javax.swing.JPanel RunesBuildPanel;
    public static javax.swing.JLayeredPane ShopPanel;
    private javax.swing.JPanel StorePanel;
    private javax.swing.JButton SummonerSpell1;
    private javax.swing.JButton SummonerSpell2;
    private javax.swing.JButton armorDefencePanelStore;
    private javax.swing.JButton attackHomePanelStore;
    private javax.swing.JButton attackspeedAttackPanelStore;
    private javax.swing.JButton consumablesHomePanelStore;
    private javax.swing.JButton criticalAttackPanelStore;
    private javax.swing.JButton damageAttackPanelStore;
    private javax.swing.JButton defenceHomePanelStore;
    private javax.swing.JButton healthDefencePanelStore;
    private javax.swing.JButton healthregDefencePanelStore;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel10;
    private javax.swing.JPanel jPanel11;
    private javax.swing.JPanel jPanel12;
    private javax.swing.JPanel jPanel13;
    private javax.swing.JPanel jPanel14;
    private javax.swing.JPanel jPanel15;
    private javax.swing.JTabbedPane jTabbedPane1;
    private javax.swing.JButton lifestealAttackPanelStore;
    private javax.swing.JButton magicHomePanelStore;
    private javax.swing.JPanel mainPanel;
    private javax.swing.JMenuBar menuBar;
    private javax.swing.JButton movementHomePanelStore;
    private javax.swing.JButton mrDefencePanelStore;
    private javax.swing.JProgressBar progressBar;
    private javax.swing.JLabel statusAnimationLabel;
    private javax.swing.JLabel statusMessageLabel;
    private javax.swing.JPanel statusPanel;
    // End of variables declaration//GEN-END:variables
    private final Timer messageTimer;
    private final Timer busyIconTimer;
    private final Icon idleIcon;
    private final Icon[] busyIcons = new Icon[15];
    private int busyIconIndex = 0;
    private JDialog aboutBox;
    private javax.swing.JLayeredPane previousStorePanel,
            currentStorePanel;
    public static RemovableButton[] BuildButtons = new RemovableButton[6];
    public static javax.swing.JPanel[] ItemBuildPanels;
    public static javax.swing.JPanel[] StorePanels;
}
